import request from '../utils/request';

const prefix = '/user';

// 首页banner
export function getBanner() {
  return request({
    auth: false,
    url: 'common/bannerList',
    method: 'get',
  });
}

// 首页热词列表
export function getSearchList() {
  return request({
    auth: false,
    url: 'common/searchList',
    method: 'get',
  });
}

// 城市列表
export function getRegion() {
  return request({
    auth: false,
    url: 'common/regionList',
    method: 'get',
  });
}

// 友情链接
export function getLink() {
  return request({
    auth: false,
    url: 'common/linkList',
    method: 'get',
  });
}
// 底部统计
export function getStat() {
  return request({
    auth: false,
    url: 'common/stat',
    method: 'get',
  });
}
// 公共配置
export function getCommon() {
  return request({
    auth: false,
    url: 'common/common',
    method: 'get',
  });
}

/** 商家相关接口 str */
/**
 * 商家列表
 */
export function getShopList(params) {
  return request({
    auth: false,
    url: 'merchant/shopList',
    method: 'get',
    params,
  });
}
/**
 * 供应商入驻
 * @returns 
 */
export function merchantEnter(data) {
  return request({
    auth: true,
    url: 'merchant/enter',
    method: 'post',
    data,
  });
}

/**
 * 入驻信息回显
 */
export function getMerchantDetail(params) {
  return request({
    auth: true,
    url: 'merchant/detail',
    method: 'get',
    params,
  });
}

/**
 * 供应商简介
 */
export function getMerchantInfo(params) {
  return request({
    auth: true,
    url: 'merchant/intro',
    method: 'get',
    params,
  });
}

/**
 * 场景方案列表
 */
export function getSceneplanList(params) {
  return request({
    auth: true,
    url: 'merchant/sceneplanList',
    method: 'get',
    params,
  });
}
/**
 * 场景方案详情
 */
export function getSceneplanInfo(data) {
  return request({
    auth: true,
    url: 'merchant/sceneplanInfo?id=' + data,
    method: 'get',
  });
}

/**
 * 装备展示
 */
export function getEquipment(params) {
  return request({
    auth: true,
    url: 'merchant/equipment',
    method: 'get',
    params,
  });
}

/** 商家相关接口 end */


/** 商品相关接口 str */

/**
 * 精品推荐
 * @body cid 分类id
 */
export function getJingXuanGoods(params) {
  return request({
    auth: false,
    url: 'goods/jingXuanGoods',
    method: 'get',
    params,
  });
}

/**
 * 分类
 * @body catId 分类id
 * @body search_type 分类id
 */
export function getSearchAttrs(params) {
  return request({
    auth: false,
    url: 'goods/searchAttr',
    method: 'get',
    params,
  });
}

/**
 * 全部分类列表
 */
export function getCategoryList(params) {
  return request({
    auth: false,
    url: 'category/list',
    method: 'get',
    params,
  });
}


/**
 * 三级分类列表
 */
export function getSanCatList(params) {
  return request({
    auth: false,
    url: 'category/sanCatList',
    method: 'get',
    params,
  });
}

/**
 * 热门分类
 */
export function getHotList(params) {
  return request({
    auth: false,
    url: 'category/hotList',
    method: 'get',
    params,
  });
}

/**
 * 商品列表
 * @body page 页码
 * @body pageSize 每页条数
 */
export function getGoodsList(params) {
  return request({
    auth: false,
    url: 'goods/list',
    method: 'get',
    params,
  });
}

/**
 * 商品详情
 * @params id 商品id
 */
export function getGoodsInfo(params) {
  return request({
    auth: false,
    url: 'goods/info',
    method: 'get',
    params,
  });
}

/**
 * 同类型商品
 */
export function getCatGoods(params) {
  return request({
    auth: false,
    url: 'goods/catGoods',
    method: 'get',
    params,
  });
}

/**
 * 推荐商品
 */
export function getRecommendGoods(params) {
  return request({
    auth: false,
    url: 'goods/recommendGoods',
    method: 'get',
    params,
  });
}

/**
 * 周边商品
 * @body goods_id 商品id
 */
export function getRelatedProduct(params) {
  return request({
    auth: false,
    url: 'goods/relatedProduct',
    method: 'get',
    params,
  });
}

/**
 * 商品销售记录
 * @body id 商品id
 * @body page 页码
 * @body pageSize 每页条数
 */
export function getSaleInfo(params) {
  return request({
    auth: false,
    url: 'goods/saleInfo',
    method: 'get',
    params,
  });
}

/**
 * 教学中心列表
 * @param goods_id 商品id
 * @param type 1视频2资料
 * @param page 页码
 * @param pageSize 每页条数
 */
export function getSpuPublishList(params) {
  return request({
    auth: false,
    url: 'user/spuPublishList',
    method: 'get',
    params,
  });
}

// 教学中心详情
export function getSpuPublishInfo(data) {
  return request({
    auth: false,
    url: 'user/spuPublishInfo?id=' + data,
    method: 'get',
  });
}


/**
 * 评价列表
 * @body goods_id 商品id
 * @body page 页码
 * @body pageSize 每页条数
 */
export function getSpuEvalList(params) {
  return request({
    auth: false,
    url: 'forum/spuEvalList',
    method: 'get',
    params,
  });
}

/**
 * 发布评价
 * @body goods_id 商品id
 * @body score
 * @body pros 优点
 * @body cons 缺点
 * @body link_url 图片视频
 * @body buy_time 2024-09-10
 * @body buy_address 安徽省合肥市蜀山区
 */
export function addSpuEval(data) {
  return request({
    auth: true,
    url: 'forum/addSpuEval',
    method: 'post',
    data,
  });
}

/**
 * 论坛回复列表
 * @body forum_id 论坛id
 * @body page 页码
 * @body pageSize 每页条数
 */
export function getSpuForumReply(params) {
  return request({
    auth: false,
    url: 'forum/spuForumReply',
    method: 'get',
    params,
  });
}

/**
 * 论坛列表
 * @body goods_id 商品id
 * @body page 页码
 * @body pageSize 每页条数
 */
export function getSpuForumList(params) {
  return request({
    auth: false,
    url: 'forum/spuForumList',
    method: 'get',
    params,
  });
}

/**
 * 论坛评论点赞/取消
 * @body fe_id
 * @body type 1论坛 2评价
 */
export function getAddSpuForumEvalZan(data) {
  return request({
    auth: true,
    url: 'forum/addSpuForumEvalZan',
    method: 'post',
    data,
  });
}

/**
 * 论坛回复
 * @body forum_id   论坛id
 * @body images 图片
 * @body content 回复内容
 * @body to_uid 回复人id
 */
export function addSpuForumReply(data) {
  return request({
    auth: true,
    url: 'forum/addSpuForumReply',
    method: 'post',
    data,
  });
}


/**
 * 论坛发布
 * @body goods_id 商品id
 * @body images 图片
 * @body content 回复内容
 */
export function addSpuForum(data) {
  return request({
    auth: true,
    url: 'forum/addSpuForum',
    method: 'post',
    data,
  });
}

/**
 * 教学中心发布
 * @body title  标题
 * @body images 图片
 * @body content 回复内容
 * @body goods_id 商品id
 * @body type 1:视频 2:资料
 */
export function publish(data) {
  return request({
    auth: true,
    url: 'user/publish',
    method: 'post',
    data,
  });
}


/** 商品相关接口 end */


/** 文章 标讯 相关接口 str */
// 标讯类别列表
export function getArticleTypeList() {
  return request({
    auth: false,
    url: 'article/typeList',
    method: 'get',
  });
}

// 标讯列表
export function getBeaconList(params) {
  return request({
    auth: false,
    url: 'article/beaconList',
    method: 'get',
    params,
  });
}
// 标讯详情
export function getBeaconInfo(data) {
  return request({
    auth: false,
    url: 'article/beaconInfo?id=' + data,
    method: 'get',
  });
}

// 资讯列表
export function getNewsList(params) {
  return request({
    auth: false,
    url: 'article/newsList',
    method: 'get',
    params,
  });
}
// 资讯详情
export function getNewsInfo(data) {
  return request({
    auth: false,
    url: 'article/newsInfo?id=' + data,
    method: 'get',
  });
}

/** 文章 标讯 相关接口 end */


/** 会员中心相关接口 str */
/**
 * 创建订单
 * @body address_id 收货地址id
 * @body goods_id 商品id
 * @body sku_id 商品规格id
 * @body remark 备注
 * @body source_type 平台：1pc2手机
 * @body number 购买数量
 * @returns 
 */
export function buyOne(data) {
  return request({
    auth: true,
    url: 'order/buyOne',
    method: 'post',
    data,
  });
}

/**
 * 订单支付
 * @body order_sn 订单号
 * @body pay_type 支付方式 1支付宝2微信
 * @returns 
 */
export function pay(data) {
  return request({
    auth: true,
    url: 'order/pay',
    method: 'post',
    data,
  });
}

/**
 * 未支付订单取消
 * @body order_sn 订单号
 * @returns 
 */
export function OrderCancel(data) {
  return request({
    auth: true,
    url: 'order/cancel',
    method: 'post',
    data,
  });
}

/**
 * 退款原因文案
 */
export function orderDesc() {
  return request({
    auth: true,
    url: 'order/orderDesc',
    method: 'get',
  });
}

/**
 * 退款申请
 */
export function orderRefund(data) {
  return request({
    auth: true,
    url: 'order/orderRefund',
    method: 'post',
    data,
  });
}

/**
 * 订单确认收货
 */
export function orderConfirm(data) {
  return request({
    auth: true,
    url: 'order/orderConfirm',
    method: 'post',
    data,
  });
}

/**
 * 订单列表
 * @body order_sn 订单号
 * @body pagesize 每页条数
 * @returns 
 */
export function getOrderList(params) {
  return request({
    auth: true,
    url: 'order/orderList',
    method: 'get',
    params,
  });
}

/**
 * 订单删除
 * @body order_sn 订单号
 * @returns 
 */
export function orderDel(data) {
  return request({
    auth: true,
    url: 'order/orderDel',
    method: 'post',
    data,
  });
}


/** 会员中心相关接口 end */

/** 会员中心相关接口 str */


// 系统消息列表
export function getSysNoticeList() {
  return request({
    auth: true,
    url: prefix + '/sysNoticeList',
    method: 'get',
  });
}

/**
 * 消息一键已读
 * @body type 1:论坛 2:评价 3:公告
 * @returns 
 */
export function msgReplyRead(data) {
  return request({
    auth: true,
    url: prefix + '/msgReplyRead',
    method: 'post',
    data,
  });
}

/**
 * 消息回复列表
 * @body page 页码
 * @body pageSize 每页条数
 * @body type 1：视频 2：资料
 * @returns 
 */
export function getMsgReplyList(params) {
  return request({
    auth: true,
    url: prefix + '/msgReplyList',
    method: 'get',
    params,
  });
}

/**
 * 我的发布删除
 * @body id 消息id
 * @returns 
 */
export function delPublish(data) {
  return request({
    auth: true,
    url: prefix + '/delPublish',
    method: 'post',
    data,
  });
}

/**
 * 我的发布
 * @body page 页码
 * @body pageSize 每页条数
 * @returns 
 */
export function getMyPublish(params) {
  return request({
    auth: true,
    url: prefix + '/myPublish',
    method: 'get',
    params,
  });
}

/**
 * 修改密码
 * @body oldpassword 旧密码
 * @body newpassword 新密码
 * @body checkpassword 重复新密码
 * @returns 
 */
export function resetpwd(data) {
  return request({
    auth: true,
    url: '/user/resetpwd',
    method: 'post',
    data,
  });
}

/**
 * 用户信息修改
 * @body username 用户名
 * @body password 用户密码
 * @body avatar 用户头像
 * @returns 
 */
export function editInfo(data) {
  return request({
    auth: true,
    url: '/user/editInfo',
    method: 'post',
    data,
  });
}

// 获取收货地址列表
export function getAddressList(data) {
  return request({
    auth: true,
    url: 'user/addressList',
    method: 'get',
    data,
  });
}

// 新增收货地址
export function addressCreate(data) {
  return request({
    auth: true,
    url: '/user/addressCreate',
    method: 'post',
    data,
  });
}

// 编辑收货地址
export function addressEdit(data) {
  return request({
    auth: true,
    url: '/user/addressEdit',
    method: 'post',
    data,
  });
}

// 删除收货地址
export function addressDel(id) {
  return request({
    auth: true,
    url: '/user/addressDel?id=' + id,
    method: 'get',
  });
}

// 意见反馈
export function userFeedback(data) {
  return request({
    auth: true,
    url: 'user/userFeedback',
    method: 'post',
    data,
  });
}

// 举报
export function userReport(data) {
  return request({
    auth: true,
    url: 'user/userReport',
    method: 'post',
    data,
  });
}


/** 会员中心相关接口 end */

/**
 * 用户登录
 * account
 * password
 */
export function login(data) {
  return request({
    auth: false,
    url: '/user/login',
    method: 'post',
    data,
  });
}

/**
 * 用户注册
 * mobile
 * password
 * code
 */
export function register(data) {
  return request({
    auth: false,
    url: '/user/register',
    method: 'post',
    data,
  });
}